]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
ScreenShield: don't really deactivate when acting as a greeter
authorGiovanni Campagna <gcampagna@src.gnome.org>
Thu, 6 Jun 2013 20:09:28 +0000 (22:09 +0200)
committerGiovanni Campagna <gcampagna@src.gnome.org>
Tue, 6 Aug 2013 14:08:36 +0000 (16:08 +0200)
In greeter mode, we don't want to hide the login dialog, drop the
modal or send spurious signals to gnome-settings-daemon.

https://bugzilla.gnome.org/show_bug.cgi?id=701761

js/ui/screenShield.js

index ffe87624624a7ce2094d38aa414f2c426d36b3b9..4e61c1115f741fc85b9721fe8e46afde4a481776 100644 (file)
@@ -1143,6 +1143,20 @@ const ScreenShield = new Lang.Class({
         if (Main.sessionMode.currentMode == 'unlock-dialog')
             Main.sessionMode.popMode('unlock-dialog');
 
+        if (this._isGreeter) {
+            // We don't want to "deactivate" any more than
+            // this. In particular, we don't want to drop
+            // the modal, hide ourselves or destroy the dialog
+            // But we do want to set isActive to false, so that
+            // gnome-session will reset the idle counter, and
+            // gnome-settings-daemon will stop blanking the screen
+
+            this._activationTime = 0;
+            this._isActive = false;
+            this.emit('active-changed');
+            return;
+        }
+
         if (this._dialog && !this._isGreeter)
             this._dialog.popModal();
 
@@ -1162,7 +1176,7 @@ const ScreenShield = new Lang.Class({
     },
 
     _completeDeactivate: function() {
-        if (this._dialog && !this._isGreeter) {
+        if (this._dialog) {
             this._dialog.destroy();
             this._dialog = null;
         }